The continuous expansion of the Internet, the expansion and sophistication of enterprise computing networks and systems, the proliferation of content, like movies, stored and accessible over the Internet, and numerous other factors continues to drive the need for large sophisticated data storage systems. Consequently, as the demand for data storage continues to increase, larger and more sophisticated storage systems are being designed and deployed. Many large scale data storage systems utilize storage appliances that include arrays of storage media. These storage appliances are capable of storing incredible amounts of data. For example, at this time, some storage appliances can store over 2 petabytes of data (over 2 quadrillion bytes of data). Moreover, multiple storage appliances may be networked together to form a cluster, which allows for an increase in the volume of stored data. Additionally, storage appliances arranged in a cluster may be configured to mirror data so that if one of the storage appliances becomes inoperable, the data is available at another storage location.
As the number of components, the number of users, and the volume of data increases, so does the size and complexity of the storage system. Occasionally, a client utilizing a storage system having storage appliances encounters a performance issue. To diagnose the root cause of the performance issue and determine a remedy, diagnostic data may be extracted from the storage appliance and provided to a service engineer for analysis. Conventionally, the diagnostic data comprises one large file including monolithic, comprehensive snapshots of a state of the storage appliance.
Due to the size of the file, the length of time between when the issue is reported and the diagnostic data is received by the service engineer is often drastic. For example, many conventional systems transmit the diagnostic data from the storage device to the service engineer over a network. Transmitting such an incredible amount of data over a network takes considerable time. For example, in many cases, it takes days to send the diagnostic data over a network to a service engineer. The client is thus waiting a consider able amount of time before the service engineer is able to start analyzing the data for diagnosis and resolution. Alternatively, to expedite this process, some clients will save the diagnostic data to a portable storage device for hand delivery to the service engineer, which is inefficient and inconvenient for the client.
It is with these observations in mind, among others, that various aspects of the present disclosure were conceived and developed.